package indiwood.model.service;

import indiwood.model.AwardVO;
import indiwood.model.CinemaListVO;
import indiwood.model.CinemaVO;
import indiwood.model.DirectorListVO;
import indiwood.model.DirectorVO;
import indiwood.model.MemberListVO;
import indiwood.model.MovieListVO;
import indiwood.model.MovieVO;
import indiwood.model.ScheduleDateVO;
import indiwood.model.ShowingListVO;
import indiwood.model.ShowingVO;

import java.util.HashMap;
import java.util.List;

import org.springframework.web.multipart.MultipartFile;


public interface AdminService {
	public DirectorListVO directorList(String pageNo);
	public HashMap<String, Object> directorContent(int no);
	public void directorWrite(DirectorVO dvo, MultipartFile uploadFile);
	public void directorDelete(int no);
	public DirectorVO directorUpdateView(int no);
	public void movieWrite(MovieVO mvo, AwardVO avo, MultipartFile posterFile);
	public HashMap<String, Object> movieContent(int no);
	public MovieListVO movieList(String pageNo);
	public void directorUpdate(DirectorVO dvo, MultipartFile uploadFile);
	public CinemaListVO cinemaList(String pageNo);
	public CinemaVO cinemaContent(int no);
	public void cinemaDelete(int no);
	public CinemaVO cinemaUpdateView(int no);
	public void cinemaUpdate(CinemaVO cvo);
	public void cinemaWrite(CinemaVO cvo);
	public HashMap<String, Object> movieUpdateView(int no);
	public void updateMovie(MovieVO mvo, MultipartFile posterFile);
	public void deleteMovie(int no);
	public void showingWrite(ShowingVO svo);
	public MemberListVO memberList(String pageNo);
	public List<DirectorVO> findAllDirector();
	public boolean checkCinema(int cinemaNo, int movieNo);
	public void deleteShowing(int showingNo);
	public HashMap<String,Object> findAllMovieInfo();
	public ShowingListVO getShowingListByShowingNo(String pageNo);
	public HashMap<String,Object> getShowingListByShowingNo(int showingNo);
	public HashMap<String,Object> getShowingContent(int showingNo);
	public void updateSchedule(ScheduleDateVO sdvo);
	public List<String> getScheduleByShowingNo(int showingNo);
	public HashMap<String,Object> getSchedule(int showingNo);
	public void deleteSchedule(ShowingVO svo);
	public int confirmShowingContent(int mvoieNo);
}
